package dk.pun.aot.client;

import dk.pun.aot.shared.character.CharacterData;
import dk.pun.aot.shared.user.UserData;
import com.google.gwt.user.client.rpc.AsyncCallback;

public interface AlphaOmegaToolsServiceAsync {
	
	void getUserData(String userId, AsyncCallback<UserData> callback);
	void updateUserData(UserData userData, AsyncCallback<Void> callback);
	void deleteUserData(String userId, AsyncCallback<Void> callback);
	
	void createCharacterData(String name, AsyncCallback<CharacterData> callback);
	void getCharacterData(Long characterKey, AsyncCallback<CharacterData> callback);
	void updateCharacterData(CharacterData characterData, AsyncCallback<Void> callback);
	void deleteCharacterData(Long characterKey, AsyncCallback<Void> callback);
	
	void getMessage(AsyncCallback<String> callback);
	void setMessage(String message, AsyncCallback<Void> callback);
}
